37 research outputs found
Combining constructive and equational geometric constraint solving techniques
In the past few years, there has been a strong trend towards
developing parametric, computer aided design systems based on
geometric constraint solving. An efective way to capture the design
intent in these systems is to define relationships between geometric
and technological variables.
In general, geometric constraint solving including functional
relationships requires a general approach and appropiate techniques toachieve the expected functional capabilities.
This work reports on a hybrid method which combines two geometric
constraint solving techniques: Constructive and equational.
The hybrid solver has the capability of managing functional
relationships between dimension variables and variables representing
conditions external to the geometric problem.
The hybrid solver is described as a rewriting system and is shown to
be correct.Postprint (published version
Searching the solution space in constructive geometric constraint solving with genetic algorithms
Geometric problems defined by constraints have an exponential number
of solution instances in the number of geometric elements involved.
Generally, the user is only interested in one instance such that
besides fulfilling the geometric constraints, exhibits some additional
properties.
Selecting a solution instance amounts to selecting a given root every
time the geometric constraint solver needs to compute the zeros of a
multi valuated function. The problem of selecting a given root is
known as the Root Identification Problem.
In this paper we present a new technique to solve the root
identification problem. The technique is based on an automatic search
in the space of solutions performed by a genetic algorithm. The user
specifies the solution of interest by defining a set of additional
constraints on the geometric elements which drive the search of the
genetic algorithm. The method is extended with a sequential niche
technique to compute multiple solutions. A number of case studies
illustrate the performance of the method.Postprint (published version
Geometric constraint problems and solution instances
Geometric constraint solving is a growing field devoted to solve geometric problems defined by relationships, called constraints, established between the geometric elements. In this work we show that what characterizes a geometric constraint problem is the set of geometric elements on which the problem is defined. If the problem is wellconstrained, a given solution instance to the geometric constraint problem admits different representations defined by measuring geometric relationships in the solution instance.Postprint (published version
Dynamic geometry based on geometric constraints
Dynamic geometry systems are tools for geometric visualization. They allow the user to define geometric elements, establish relationships between them and explore the dynamic behavior of the remaining geometric elements when one of them is moved. The main problem in dynamic geometry systems is the ambiguity that arises from operations which lead to more than one possible solution. While the user is defining the geometric construction, he is responsible to resolve these ambiguities. However, when the user is dragging a geometric element, the system is responsible to choose the intended solution, that is, the same solution that the user would select if we could ask him again. Most dynamic geometry systems deal with this problem in such a way that the solution selection method leads to a fixed dynamic behavior of the system. This is specially annoying when this behavior is not the one the user intended. In this work we propose an architecture for dynamic geometry systems built upon a set of functional units which will allow to apply some well known results from the Geometric Constraint Solving field. A functional unit called emph{filter} will provide the user with tools to unambiguously capture the expected dynamic behavior of a given geometric problem.Postprint (published version
Decomposition of geometric constraint graphs based on computing fundamental circuits
The graph-based geometric constraint solving technique works in two steps. First the geometric problem is translated into a graph whose vertices represent de set of geometric elements and whose edges are the constraints. Then the constraint problem is solved by decomposing the graph into a colection of subgraphs each representing a standard problem which is solved by a dedicated equational solver. In this work we report on an algorithm to decompose biconnected graphs representing geometric constraint problems. The algorithm is based on recursively splitting the graphs through terns of vertices located on fundamental circuits of the graph. Preliminar experiments suggest that the algorithm runtime is at worst quadratic with the total number of vertices in the graph. In a case study we illustrate how the algorithm works.Postprint (published version
A rule-constructive geometric constraint solver
This work reports on the implementation of a two-dimensional, variational geometric constraint solver based on a constructive approach. The solver computes a solution in two phases. First, using rewrite rules, the solver builds a sequence of construction steps. Then, the construction steps are carried out to generate an instance of the geometric object for the current dimension values. We discuss some issues concerning the data representation and the rules used. Then a simple example illustrates how the solver works. Finally we give a correctness proof of the solver.Postprint (published version
A description of TSC V1.2: a tool conceived to build user interfaces to distributed applications
TSC is a package conceived to build on it any kind of application that requires an user interface mainly command oriented. The package has a distributed philosophy thus having a high modularity and portability. Although TSC was designed with graphical applications in mind, its use is not restricted to them and big profit can be achieved by using it in other kind of applications. This report describes the functional capabilities of the product and it shows several examples of use.Preprin
TSC V1.2: anà lisi de la problemà tica d'ús després d'un perÃode d'explotació
El producte TSC fou concebut com una eina per la construcció rà pida d'interfÃcies d'usuari a aplicacions distribuides. L'arquitectura mode de funcionament i exemples d'aplicació poden veure's a [Sot 92] i a [Sot 94]. Després d'haver estat utilitzant TSC en diversos à mbits d'explotació i molt especialment en ser usat per modernitzar la interfÃcie de l'aplicació DMI [Jua 93, Bru 90], s'han descobert prous deficiències com per fer-ne una anà lisi acurada. Aquest document recull un conjunt de problemes que descriu extensivament i classifica, relacionats amb l'ús de l'aplicació durant els darrers dos anys.Preprin
A Set of rules for a constructive geometric constraint solver
This work presents the set of constructive rules used by a two-dimensional, variational geometric constraint solver based on a constructive approach. The main goal in defining the rules has been to keep the set of rules as small as possible while being able to yield a useful solver with a large enough domain of solvable constructions. The rules can be classified according to their functionality as belonging to one of three possible types: creation rules, merging rules, and constructive rules. Creation rules translate the geometric constraints into the appropriate internal representation. Merging rules are used to compute the transitive closure of angle constraints. Construction rules allow to build triangles and they also build some quadrilaterals. The rules can build any triangle defined by a set of three independent relationships given as either distances between two vertices, angles between two sides and altitudes. Quadrilateral rules can build three specific, different quadrilaterals
A rule-constructive geometric constraint solver
This work reports on the implementation of a two-dimensional, variational geometric constraint solver based on a constructive approach. The solver computes a solution in two phases. First, using rewrite rules, the solver builds a sequence of construction steps. Then, the construction steps are carried out to generate an instance of the geometric object for the current dimension values. We discuss some issues concerning the data representation and the rules used. Then a simple example illustrates how the solver works. Finally we give a correctness proof of the solver